home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 011 / brutil.arc / MACRO.LIB < prev    next >
Text File  |  1988-03-04  |  10KB  |  644 lines

  1. BASYNC    MACRO    
  2. ALNG     EQU    9
  3. BLNG     EQU    ((ALNG*8)+2)/3
  4. CLNG     EQU    ALNG*2
  5. DLNG     EQU    ALNG*3
  6. ELNG     EQU    CLNG-1
  7.     ENDM
  8. IFSTR    MACRO    P1
  9. $11     =    1
  10. $12     =    0
  11.     IRPC    P0,<P1>
  12.     IF    $11
  13. $11     =    0
  14.     IF    ("&P0&P0" EQ "''") OR ('&P0&P0' EQ '""')
  15. $12     =    1
  16.     ENDIF
  17.     ENDIF
  18.     ENDM
  19.     ENDM
  20. JNM    MACRO    P1
  21.     JNS    P1
  22.     ENDM
  23. JNNC    MACRO    P1
  24.     JC    P1
  25.     ENDM
  26. JNNZ    MACRO    P1
  27.     JZ    P1
  28.     ENDM
  29. JNP    MACRO    P1
  30.     JS    P1
  31.     ENDM
  32. JNPE    MACRO    P1
  33.     JNP    P1
  34.     ENDM
  35. JNPO    MACRO    P1
  36.     JP    P1
  37.     ENDM
  38. JNNA    MACRO    P1
  39.     JA    P1
  40.     ENDM
  41. ASGP    MACRO    P1,P2,P3,P4,P5,P6
  42.     LOCAL    LBL
  43.     IFNB    <P6>
  44.     JN&P6    LBL
  45.     ENDIF
  46.     IFNB    <P2>
  47.     IFNB    <P4>
  48.     MOV    CX,OFFSET ((P4)*256+(P2))
  49.     ELSE
  50.     MOV    CL,P2
  51.     ENDIF
  52.     ELSE
  53.     IFNB    <P4>
  54.     MOV    CH,P4
  55.     ENDIF
  56.     ENDIF
  57.     IFNB    <P1>
  58.     MOV    DX,OFFSET (P1)
  59.     ENDIF
  60.     IFNB    <P3>
  61.     MOV    BX,OFFSET (P3)
  62.     ENDIF
  63.     CALL    P5
  64.     IFNB    <P6>
  65. LBL:
  66.     ENDIF
  67.     ENDM
  68. ASGI    MACRO    P1,P2,P3,P4,P5,P6,P7,P8,P9
  69.     LOCAL    AI1,AI2
  70.     IFNB    <P4>
  71.     JN&P4    AI2
  72.     ENDIF
  73.     ASGP    P1,,,(OFFSET(AI2-AI1)),P3
  74. AI1:    ASGM    DB,P2,P5,P6,P7,P8,P9
  75. AI2:
  76.     ENDM
  77. CVAB2    MACRO    P1,P2,P3,P4,P5
  78.     LOCAL    LBL
  79.     IFNB    <P5>
  80.     JN&P5    LBL
  81.     ENDIF
  82.     IFB    <P4>
  83.     ASGP    ,P2,P3,' ',MSC047
  84.     ELSE
  85.     ASGP    ,P2,P3,P4,MSC047
  86.     ENDIF
  87.     IFNB    <P1>
  88.     XCHG    BX,DX
  89.     MOV    WORD PTR P1,BX
  90.     ENDIF
  91.     IFNB    <P5>
  92. LBL:
  93.     ENDIF
  94.     ENDM
  95. OIOXC    MACRO    P1,P2,P3,P4
  96.     LOCAL    OIOXCL,L_7,L_8
  97.     ASGP    P1,,,,P2
  98.     IFNB    <P3>
  99.     IFB    <P4>
  100.     JNC    L_7
  101.     JMP    P3
  102. L_7:
  103.     ELSE
  104.     JC    L_8
  105.     JMP    P3
  106. L_8:
  107.     ENDIF
  108.     ELSE
  109.     JC    L_9
  110.     JMP    OIOXCL
  111. L_9:
  112.     ABORT
  113. OIOXCL:
  114.     ENDIF
  115.     ENDM
  116. CVBDZ3    MACRO    P1,P2,P3
  117.     IFNB    <P2>
  118.     ASGP    P1,,,P2,P3
  119.     ELSE
  120.     ASGP    P1,,,' ',P3
  121.     ENDIF
  122.     ENDM
  123. ASGM    MACRO    P1,P2,P3,P4,P5,P6,P7,P8,P9,P10,P11
  124.     IRP    P0,<P2,P3,P4,P5,P6,P7,P8,P9,P10,P11>
  125.     IFNB    <P0>
  126.     P1    P0
  127.     ENDIF
  128.     ENDM
  129.     ENDM
  130. PUSHM    MACRO    P1,P2,P3,P4,P5,P6,P7,P8,P9,P10
  131.     ASGM    PUSH,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10
  132.     ENDM
  133. POPM    MACRO    P1,P2,P3,P4,P5,P6,P7,P8,P9,P10
  134.     ASGM    POP,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10
  135.     ENDM
  136. INCM    MACRO    P1,P2,P3,P4,P5,P6,P7,P8,P9,P10
  137.     ASGM    INC,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10
  138.     ENDM
  139. DECM    MACRO    P1,P2,P3,P4,P5,P6,P7,P8,P9,P10
  140.     ASGM    DEC,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10
  141.     ENDM
  142. CALLM    MACRO    P1,P2,P3,P4,P5,P6,P7,P8,P9,P10
  143.     ASGM    CALL,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10
  144.     ENDM
  145. JMPM    MACRO    P1,P2,P3,P4,P5,P6,P7,P8
  146.     ASGM    JMP,P1,P2,P3,P4,P5,P6,P7,P8,P9,P10
  147.     ENDM
  148. ADDM    MACRO    P1,P2,P3,P4,P5,P6,P7,P8,P9,P10
  149.     IRP    P0,<P1,P2,P3,P4,P5,P6,P7,P8,P9,P10>
  150.     IFNB    <P0>
  151.     ADD    AL,P0
  152.     ENDIF
  153.     ENDM
  154.     ENDM
  155. DADM    MACRO    P1,P2,P3,P4,P5,P6,P7,P8,P9,P10
  156.     IRP    P0,<P1,P2,P3,P4,P5,P6,P7,P8,P9,P10>
  157.     IFNB    <P0>
  158.     ADD    BX,P0
  159.     ENDIF
  160.     ENDM
  161.     ENDM
  162. SHLDM    MACRO    P1,P2,P3,P4,P5,P6,P7,P8,P9,P10
  163.     IRP    P0,<P1,P2,P3,P4,P5,P6,P7,P8,P9,P10>
  164.     IFNB    <P0>
  165.     MOV    WORD PTR (P0),BX
  166.     ENDIF
  167.     ENDM
  168.     ENDM
  169. STAM    MACRO    P1,P2,P3,P4,P5,P6,P7,P8,P9,P10
  170.     IRP    P0,<P1,P2,P3,P4,P5,P6,P7,P8,P9,P10>
  171.     IFNB    <P0>
  172.     MOV    BYTE PTR (P0),AL
  173.     ENDIF
  174.     ENDM
  175.     ENDM
  176. RLM    MACRO    P1
  177.     REPT    P1
  178.     ROL    AL,1
  179.     ENDM
  180.     ENDM
  181. RRM    MACRO    P1
  182.     REPT    P1
  183.     ROR    AL,1
  184.     ENDM
  185.     ENDM
  186. SLM    MACRO    P1
  187.     REPT    P1
  188.     SHL    AL,1
  189.     ENDM
  190.     ENDM
  191. SRM    MACRO    P1
  192.     REPT    P1
  193.     SHR    AL,1
  194.     ENDM
  195.     ENDM
  196. SAVE    MACRO    P1,P2,P3,P4,P5,P6,P7,P8,P9,P10
  197.     PUSHM    P1,P2,P3,P4,P5,P6,P7,P8,P9,P10
  198. RESTORE MACRO
  199.     POPM    P10,P9,P8,P7,P6,P5,P4,P3,P2,P1
  200.     ENDM
  201.     ENDM
  202. NI    MACRO    P1,P2
  203.     AND    BYTE PTR P1,P2
  204.     ENDM
  205. OI    MACRO    P1,P2
  206.     OR    BYTE PTR P1,P2
  207.     ENDM
  208. XI    MACRO    P1,P2
  209.     XOR    BYTE PTR P1,P2
  210.     ENDM
  211. CCI    MACRO    P1,P2
  212.     CMP    BYTE PTR P1,P2
  213.     ENDM
  214. TM    MACRO    P1,P2
  215.     LOCAL    TML
  216.     TEST    BYTE PTR P1,P2
  217.     JZ    TML
  218.     CMP    BYTE PTR P1,P2
  219.     STC
  220.     JNZ    TML
  221.     MOV    AH,1
  222.     OR    AH,AH
  223. TML:
  224.     ENDM
  225. CA    MACRO    P1
  226.     LOCAL    JCRCL
  227.     JNA    JCRCL
  228.     CALL    P1
  229. JCRCL:
  230.     ENDM
  231. RA    MACRO
  232.     LOCAL    JCRCL
  233.     JNA    JCRCL
  234.     RET
  235. JCRCL:
  236.     ENDM
  237. CNA    MACRO    P1
  238.     LOCAL    JCRCL
  239.     JA    JCRCL
  240.     CALL    P1
  241. JCRCL:
  242.     ENDM
  243. RNA    MACRO
  244.     LOCAL    JCRCL
  245.     JA    JCRCL
  246.     RET
  247. JCRCL:
  248.     ENDM
  249. DBDW    MACRO    P1,P2
  250.     DB    P1
  251.     DW    OFFSET (P2)
  252.     ENDM
  253. DBDWR    MACRO    P1,P2
  254.     DB    P1,HIGH (P2),LOW (P2)
  255.     ENDM
  256. SORT    MACRO    P1
  257.     MOV    AL,'&P1'
  258.     MOV    BX,OFFSET (KEYTB&P1)
  259.     CALL    GENSRT
  260.     MOV    CX,OFFSET (KBLN&P1)
  261.     CALL    REORG
  262.     ENDM
  263. KEY    MACRO    P1,P2,P3,P4
  264. $1     =    $1+P2
  265.     DBDW    P2,P1
  266.     DB    '&P3','&P4'
  267.     ENDM
  268. KEYEND    MACRO
  269.     DB    0
  270.     DB    $1+2 DUP (?)
  271.     IF    $1 GT $1A
  272. $1A     =    $1
  273.     ENDIF
  274. $1     =    0
  275.     ENDM
  276. HELP    MACRO    P1,P2,P3
  277.     LOCAL    L_1
  278.     IFNB    <P3>
  279.     DEC    AL
  280.     JNZ    L_1
  281.     CALL    HR&P1&P3
  282. L_1:
  283.     ELSE
  284.     IFB    <P1>
  285.     MOV    AX,CS
  286.     MOV    DS,AX
  287.     DOS    9,ERASE
  288.     JMP    SHORT HR
  289. SELECT:    DOS    9
  290.     DOS    9,SELMSG
  291. COMDSP:    DOS    1
  292.     PUSH    AX
  293.     DOS    9,ERASE
  294.     POP    AX
  295.     SUB    AL,'0'
  296.     RET
  297. DSPPAG:    DOS    9
  298.     DOS    9,PAGMSG
  299.     JMP    SHORT COMDSP
  300. SELMSG     DB    13,10,'Selection:$'
  301. PAGMSG     DB    13,10,'Press any key to continue ... $'
  302. ERASE     DB    13,10,10,10,10,10,10,10,10,10,10,10,10
  303.     DB    10,10,10,10,10,10,10,10,10,10,10,10,'$'
  304.     ENDIF
  305. HR&P1:
  306.     IFB    <P2>
  307.     ASGP    HM&P1,,,,DSPPAG
  308.     SUB    AL,AL
  309.     RET
  310.     ELSE
  311.     ASGP    HM&P1,,,,SELECT
  312.     JNZ    L_1
  313.     RET
  314. L_1:
  315. $1     =    0
  316.     REPT    P2
  317. $1     =    $1+1
  318.     HELP    P1,,%$1
  319.     ENDM
  320.     JMP    SHORT HR&P1
  321.     ENDIF
  322.     ENDIF
  323.     ENDM
  324. INIT    MACRO    P1
  325.     ASGP    P1,,,,SYS011
  326.     ENDM
  327. ABORT    MACRO
  328.     CALL    SYS07
  329.     ENDM
  330. DOS    MACRO    P1,P2,P3
  331.     LOCAL    LBL
  332.     IFNB    <P3>
  333.     JN&P3    LBL
  334.     ENDIF
  335.     IFNB    <P1>
  336.     MOV    AH,P1
  337.     ENDIF
  338.     IFNB    <P2>
  339.     MOV    DX,OFFSET (P2)
  340.     ENDIF
  341.     INT    21H
  342.     IFNB    <P3>
  343. LBL:
  344.     ENDIF
  345.     ENDM
  346. BIOS    MACRO    P1,P2
  347.     IFNB    <P2>
  348.     MOV    CX,OFFSET (P2)
  349.     ENDIF
  350.     CALL    SYS013+(P1*3)
  351.     ENDM
  352. EXIT    MACRO    P1
  353.     LOCAL    LI1
  354.     IFB    <P1>
  355.     JMP    SYS012
  356.     ELSE
  357.     IFSTR    P1
  358.     IF    $12
  359.     CALL    SYS014
  360.     DB    LI1-$-1,P1
  361. LI1:
  362.     ELSE
  363.     MOV    DX,OFFSET (P1)
  364.     JMP    SYS015
  365.     ENDIF
  366.     ENDIF
  367.     ENDM
  368. OPENI    MACRO    P1,P2,P3
  369.     OIOXC    P1,SYS031,P2,P3
  370.     ENDM
  371. OPENO    MACRO    P1,P2,P3
  372.     OIOXC    P1,SYS032,P2,P3
  373.     ENDM
  374. OPENX    MACRO    P1,P2,P3
  375.     OIOXC    P1,SYS033,P2,P3
  376.     ENDM
  377. CLOSE    MACRO    P1,P2,P3
  378.     OIOXC    P1,SYS034,P2,P3
  379.     ENDM
  380. LINKX    MACRO    P1
  381.     MOV    BX,OFFSET (P1)
  382.     JMP    SYS061
  383.     ENDM
  384. CVDB    MACRO    P1,P2,P3,P4
  385.     ASGP    P1,P2,P3,P4,CNV011
  386.     DB    10
  387.     ENDM
  388. CVOB    MACRO    P1,P2,P3,P4
  389.     ASGP    P1,P2,P3,P4,CNV011
  390.     DB    8
  391.     ENDM
  392. CVBD    MACRO    P1,P2,P3,P4
  393.     ASGP    P1,P2,P3,P4,CNV012
  394.     DB    10
  395.     ENDM
  396. CVBO    MACRO    P1,P2,P3,P4
  397.     ASGP    P1,P2,P3,P4,CNV012
  398.     DB    8
  399.     ENDM
  400. CDBD    MACRO    P1,P2,P3,P4,P5,P6
  401.     CVBD    P1,P2,P3,P4
  402.     ASGP    ,P2-1,P1,P5,MSC051
  403.     MOV    AL,P6
  404.     MOV    BYTE PTR P1+P2,AL
  405.     ENDM
  406. CVBS    MACRO    P1,P2,P3
  407.     ASGP    P1,,P3,P2,CNV021
  408.     ENDM
  409. CVBH    MACRO    P1,P2,P3
  410.     ASGP    P1,,P3,P2,CNV022
  411.     ENDM
  412. CVSB    MACRO    P1,P2,P3
  413.     ASGP    P1,,P3,P2,CNV023
  414.     ENDM
  415. CVHB    MACRO    P1,P2,P3
  416.     ASGP    P1,,P3,P2,CNV024
  417.     ENDM
  418. MULB    MACRO    P1,P2,P3,P4
  419.     ASGP    P1,P2,P3,P4,FXP011
  420.     ENDM
  421. DIVB    MACRO    P1,P2,P3,P4
  422.     ASGP    P1,P2,P3,P4,FXP012
  423.     ENDM
  424. PACK    MACRO    P1,P2,P3
  425.     ASGP    P1,,P3,P2,MSC16
  426.     ENDM
  427. UNPK    MACRO    P1,P2,P3
  428.     ASGP    P1,,P3,P2,MSC17
  429.     ENDM
  430. FIND    MACRO    P1,P2,P3,P4
  431. $1     =    LOW (P4)
  432.  
  433.     ASGP    P1,$1,P3,P2,MSC22
  434.     ENDM
  435. FINDA    MACRO    P1,P2,P3,P4
  436. $1     =    LOW (P4)
  437.     ASGP    P1,$1,P3,P2,MSC23
  438.     ENDM
  439. MVCL    MACRO    P1,P2,P3,P4
  440.     IFNB    <P2>
  441.     MOV    CX,OFFSET (P2)
  442.     ENDIF
  443.     ASGP    P1,,P3,,MSC252,P4
  444.     ENDM
  445. BTIR    MACRO
  446.     CALL    $BTIR
  447.     ENDM
  448. BTDR    MACRO
  449.     CALL    $BTDR
  450.     ENDM
  451. CLCL    MACRO    P1,P2,P3
  452.     IFNB    <P2>
  453.     MOV    CX,OFFSET (P2)
  454.     ENDIF
  455.     ASGP    P1,,P3,,MSC262
  456.     ENDM
  457. FILL    MACRO    P1,P2,P3
  458.     ASGP    P1,,,,MSC011
  459.     DB    P3,P2
  460.     ENDM
  461. MVCMI    MACRO    P1,P2,P3,P4,P5,P6,P7,P8,P9
  462.     IFNB    <P3>
  463.     MOV    AH,P3
  464.     ENDIF
  465.     ASGI    P1,P2,MSC281,P4,P5,P6,P7,P8,P9
  466.     ENDM
  467. MVCM    MACRO    P1,P2,P3,P4,P5
  468.     IFNB    <P4>
  469.     MOV    AH,P4
  470.     ENDIF
  471.     ASGP    P1,,P3,P2,MSC282,P5
  472.     ENDM
  473. MVCI    MACRO    P1,P2,P3,P4,P5,P6,P7,P8
  474.     ASGI    P1,P2,MSC021,P3,P4,P5,P6,P7,P8
  475.     ENDM
  476. MVC    MACRO    P1,P2,P3,P4
  477.     ASGP    P1,,P3,P2,MSC022,P4
  478.     ENDM
  479. CVBDZ1    MACRO    P1,P2,P3
  480.     IFNB    <P2>
  481.     MOV    AL,BYTE PTR P2
  482.     ENDIF
  483.     CVBDZ3    P1,P3,MSC043
  484.     ENDM
  485. CVBDZ2    MACRO    P1,P2,P3
  486.     IFNB    <P2>
  487.     MOV    BX,WORD PTR P2
  488.     ENDIF
  489.     CVBDZ3    P1,P3,MSC046
  490.     ENDM
  491. CVBB2    MACRO    P1,P2,P3,P4
  492.     CVAB2    P1,2,P2,P3,P4
  493.     ENDM
  494. CVDB2    MACRO    P1,P2,P3,P4
  495.     CVAB2    P1,10,P2,P3,P4
  496.     ENDM
  497. CVHB2    MACRO    P1,P2,P3,P4
  498.     CVAB2    P1,16,P2,P3,P4
  499.     ENDM
  500. CVOB2    MACRO    P1,P2,P3,P4
  501.     CVAB2    P1,8,P2,P3,P4
  502.     ENDM
  503. BQUE    MACRO    P1
  504.     IFNB    <P1>
  505.     MOV    BX,OFFSET (P1)
  506.     ENDIF
  507.     MOV    WORD PTR MSC06A,BX
  508.     ENDM
  509. CQUE    MACRO    P1
  510.     ASGP    ,,P1,,MSC061
  511.     ENDM
  512. SCQUE    MACRO    P1
  513.     IFNB    <P1>
  514.     MOV    AL,P1
  515.     ENDIF
  516.     CALL    MSC062
  517.     ENDM
  518. FQUE    MACRO
  519.     CALL    MSC063
  520.     ENDM
  521. TQUE    MACRO
  522.     CALL    MSC064
  523.     ENDM
  524. CLRQUE    MACRO
  525.     CALL    MSC065
  526.     ENDM
  527. FSCQUE    MACRO    P1
  528.     IFNB    <P1>
  529.     MOV    AL,P1
  530.     ENDIF
  531.     CALL    MSC066
  532.     ENDM
  533. LFQUE    MACRO
  534.     CALL    MSC067
  535.     ENDM
  536. PQUE    MACRO
  537.     CALL    MSC068
  538.     ENDM
  539. LPQUE    MACRO
  540.     CALL    MSC069
  541.     ENDM
  542. ADDB    MACRO    P1,P2,P3
  543.     ASGP    P1,P2,P3,,MSC07
  544.     ADC    AL,M
  545.     ENDM
  546. SUBB    MACRO    P1,P2,P3
  547.     ASGP    P1,P2,P3,,MSC07
  548.     SBB    AL,M
  549.     ENDM
  550. NC    MACRO    P1,P2,P3
  551.     ASGP    P1,P2,P3,,MSC07
  552.     AND    AL,M
  553.     ENDM
  554. OC    MACRO    P1,P2,P3
  555.     ASGP    P1,P2,P3,,MSC07
  556.     OR    AL,M
  557.     ENDM
  558. XC    MACRO    P1,P2,P3
  559.     ASGP    P1,P2,P3,,MSC07
  560.     XOR    AL,M
  561.     ENDM
  562. SHLB    MACRO    P1,P2,P3
  563.     ASGP    P1,P2,,,MSC081,P3
  564.     ENDM
  565. SHRB    MACRO    P1,P2,P3
  566.     ASGP    P1,P2,,,MSC082,P3
  567.     ENDM
  568. NEGB    MACRO    P1,P2,P3
  569.     ASGP    ,,P1,P2,MSC181,P3
  570.     ENDM
  571. NOTB    MACRO    P1,P2,P3
  572.     ASGP    ,,P1,P2,MSC182,P3
  573.     ENDM
  574. INCB    MACRO    P1,P2,P3
  575.     ASGP    ,,P1,P2,MSC183,P3
  576.     ENDM
  577. TWR    MACRO    P1,P2
  578.     CALL    MSC11
  579.     DB    P1,P2
  580.     ENDM
  581. TR    MACRO    P1,P2,P3
  582.     ASGP    P1,P2,P3,,MSC121
  583.     MOV    [SI],AL
  584.     ENDM
  585. TRT    MACRO    P1,P2,P3
  586.     ASGP    P1,P2,P3,,MSC121
  587.     OR    AL,AL
  588.     ENDM
  589. CDEHL    MACRO
  590.     CMP    DX,BX
  591.     ENDM
  592. SUBDE    MACRO
  593.     SUB    BX,DX
  594.     ENDM
  595. CLCI    MACRO    P1,P2,P3,P4,P5,P6,P7
  596.     ASGI    P1,P2,MSC142,,P3,P4,P5,P6,P7
  597.     ENDM
  598. CLCC    MACRO    P1,P2,P3
  599.     ASGP    P1,,P3,P2,MSC143
  600.     ENDM
  601. CLCUI    MACRO    P1,P2,P3,P4,P5,P6,P7
  602.     ASGI    P1,P2,MSC292,,P3,P4,P5,P6,P7,P8
  603.     ENDM
  604. CLCU    MACRO    P1,P2,P3
  605.     ASGP    P1,,P3,P2,MSC293
  606.     ENDM
  607. CLCAI    MACRO    P1,P2,P3,P4,P5,P6,P7
  608.     ASGI    P1,P2,MSC302,,P3,P4,P5,P6,P7
  609.     ENDM
  610. CLCA    MACRO    P1,P2,P3
  611.     ASGP    P1,,P3,P2,MSC303
  612.     ENDM
  613. TZERO    MACRO    P1,P2
  614.     ASGP    ,,P1,P2,MSC152
  615.     ENDM
  616. ZAB    MACRO    P1,P2,P3,P4
  617.     ASGP    P1,P2,P3,P4,MSC20
  618.     SBB    AL,AL
  619.     ENDM
  620. ZAP    MACRO    P1,P2,P3,P4
  621.     ASGP    P1,P2,P3,P4,MSC20
  622.     SUB    AL,AL
  623.     ENDM
  624. DADA    MACRO    P1
  625.     IFNB    <P1>
  626.     MOV    AL,P1
  627.     ENDIF
  628.     CALL    MSC212
  629.     ENDM
  630. DADSA    MACRO    P1
  631.     IFNB    <P1>
  632.     MOV    AL,P1
  633.     ENDIF
  634.     CALL    MSC213
  635.     ENDM
  636.     P1
  637.     IFNB    <P1>
  638.     MOV    AL,P1
  639.     ENDIF
  640.     CALL    MSC212
  641.     ENDM
  642. DADSA    MACRO    P1
  643.     IFNB    <P1>
  644.     MOV    AL,